import java.time.MonthDay;
import java.util.Scanner;


/**
 * 问题描述
 *
 * 对于一个日期，我们可以计算出年份的各个数位上的数字之和，也可以分别计算月和日的各位数字之和。请问从 19001900 年 11 月 11 日至 99999999 年 1212 月 3131 日，总共有多少天，年份的数位数字之和等于月的数位数字之和加日的数位数字之和。
 *
 * 例如，20222022 年 1111 月 1313 日满足要求，因为 2+0+2+2=(1+1)+(1+3)2+0+2+2=(1+1)+(1+3) 。
 *
 * 请提交满足条件的日期的总数量。*/
public class SpecialDate {
    public static int getAdd(int num){
        int sum = 0;
        while(num > 0){
            sum += num % 10;
            num /= 10;
        }
        return sum;
    }

    public static boolean isRun(int year){
        if((year % 4 == 0 && year % 100 != 0) || (year % 400 ==0)){
            return true;
        }
        return false;
    }
    public static void main(String[] args) {
        int count = 0;
        int year = 1900;int month = 1;int day = 1;
        int[] MonthDay = {29,31,28,31,30,31,30,31,31,30,31,30,31};
        for (year = 1900; year <= 9999; year++) {
            for (month = 1; month <= 12; month++) {
                if(isRun(year) && month == 2){
                    for (day = 1;  day <= MonthDay[0] ; day++) {
                        if(getAdd(year) == getAdd(month) + getAdd(day)){
                            count++;
                        }
                    }
                }else{
                    for (day = 1;  day<=MonthDay[month] ; day++) {
                        if(getAdd(year) == getAdd(month) + getAdd(day)){
                            count++;
                        }
                    }
                }

            }
        }
        System.out.println(count);
    }
}
